This invention relates to a parallel processing computer, and more particularly to a multiple instruction flow, multiple data flow type (MIMD flow) type parallel processing computer which is suitable for obtaining a numeric solution of a partial differential equation by parallel processing at a high speed.
Parallel processing computers executing parallel processing by use of a plurality of processors have been developed in the past in order to make calculations of scientific technology, particularly to obtain numeric solutions of partial differential equations. A typical example of such computers is disclosed in the article entitled "PACS" A Parallel Microprocessor Array for Scientific Calculations" in ACM Transactions on Computer Systems, Vol. 1, No. 3, August 1983, pp. 195-221.
This computer is referred to as an "adjacent connection type" in which adjacent processors are connected to constitute an array processor of a unidimensional or two-dimensional arrangement. Although the computer had the advantage that the connection between the processors can be made easily, it involves the drawback that the data transfer time between remote processors is great.
That is, data transfer between the remote processors can be made through relay processors, but the relay processors need time to receive and send the data. Therefore, the ratio of the transfer time to the data processing time is great and the processing performance is not sufficiently high.
Since the hardware arrangement of the processors is fixed, the efficiency of calculation depends upon the problem to be solved, as will be illustrated below.
(1) When a unidimensional problem (e.g., ##EQU1## is processed by the processors in a two-dimensional arrangement, only the processors of one row or one column are used as shown in FIG. 2(a), but the assignment of calculation lattice points such as shown in FIG. 2(b) is made generally. In the former case, the number of lattice points assigned to one processor is great so that calculation time is long. In the latter case, the data transfer direction differs with the position of the processor, so that an excessive processing time is necessary for this judgement.
(2) When a two-dimensional calculation (e.g., a solution method with an explicit difference ##EQU2## is made, the number of transfer data is greater in the processors having a unidimensional arrangement than in processors with a two-dimensional arrangement, and the processing time is longer. For example, when a calculation of 16.times.16 lattice points is made by 16 processors in a unidimensional arrangement and by 4.times.4 processors in a two-dimensional arrangement, the number of transfer data between the adjacent processors is 16 for the two-dimensional arrangement whereas it is 32 in the unidimensional arrangement, although 16 lattice points are to be assigned to each processor in either case.
As described above, the number of transfer data is likely to increase and the processing load for one processor becomes great, depending upon the arrangement of the processors even when the same problem is to be solved, and if the arrangement of the processors is fixed, the efficiency of calculation is reduced for such a problem.